home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 076-100 / disk_091 / samples / mpu / locales.adl < prev    next >
Text File  |  1992-05-06  |  18KB  |  729 lines

  1. Sayer =
  2.     (IF ($not %2) THEN
  3.     ($say %1 "\n")
  4.     )
  5.     ($return %1)
  6. ;
  7.  
  8. .ALL(LDESC) =
  9.     ($say "You shouldn't be here at all.  This is THE COSMIC ALL.\n")
  10. ;
  11. .ALL(SDESC) =
  12.     ($return (Sayer "THE COSMIC ALL" %0))
  13. ;
  14.  
  15. rdsc = ($return (Sayer "Road" %0));
  16. rldsc = ($say "You are on the road.\n");
  17.  
  18. road1(SDESC) = rdsc;
  19. road1(LDESC) =
  20.     ($say
  21. "You're on a dirt road going east-west.  Tall stalks of
  22. corn grow on either side of the road.\n"
  23.     )
  24. ;
  25.  
  26. road2(SDESC) = rdsc;        road2(LDESC) = rldsc;
  27.  
  28. road3(SDESC) =
  29.     ($return (Sayer "Bridge" %0))
  30. ;
  31. road3(LDESC) =
  32.     (IF ($prop dragon KILLED) THEN
  33.     ($say "You are on a bridge over a swift river.  ")
  34.      ELSE
  35.     ($say "You are on a bridge over a dry river bed.  ")
  36.     )
  37.     ($say "The river goes north-south, and the road continues east-west.\n")
  38. ;
  39.  
  40. road4(SDESC) = rdsc;        road4(LDESC) = rldsc;
  41. road5(SDESC) = rdsc;        road5(LDESC) = rldsc;
  42.  
  43. road6(LDESC) =
  44.     ($say
  45. "A road from the west forks north and south here.  To the east is a
  46. dense-looking forest; cornfields are seen on the west.\n"
  47.     )
  48. ;
  49. road6(SDESC) = ($return (Sayer "Fork in road" %0));
  50.  
  51. road7(SDESC) = rdsc;
  52. road7(LDESC)=
  53.     ($say
  54. "The road stretches a long way east-west.  A short fence divides the
  55. road from the cornfields beyond.  Please don't tresspass.\n"
  56.     )
  57. ;
  58.  
  59.  
  60. gdsc =
  61.     ($say "You are somewhere in a cornfield.  The cornstalks are ")
  62.     (IF ($prop dragon KILLED) THEN
  63.     ($say "green and healthy.\n")
  64.      ELSE
  65.     ($say "brown and dry-looking.\n")
  66.     )
  67. ;
  68.  
  69. gsdsc = ($return (Sayer "Cornfield" %0));
  70. fsdsc = ($return (Sayer "Forest" %0));
  71.  
  72. gard1(SDESC) = gsdsc;            gard1(LDESC) = gdsc;
  73. gard2(SDESC) = gsdsc;            gard2(LDESC) = gdsc;
  74.  
  75. frst1(SDESC) = fsdsc;            frst1(LDESC) = fdsc;
  76.  
  77. farm1(SDESC) = ($return (Sayer "Farm Entrance" %0));
  78. farm1 (LDESC) =
  79.     ($say
  80. "You are at the entrance on the south side of a rundown
  81. farmhouse.  Someone has painted 'DIE, HEATHENS' on the
  82. front door, which barely stays on its hinges.  Marks of
  83. smoke and flame are visible.  A road runs to the south,
  84. and you may walk around the farmhouse by going east or west.\n"
  85.     )
  86. ;
  87.  
  88. farm2(LDESC) =
  89.     ($say
  90. "You are in the entry hall of a long-deserted old farmhouse.
  91. The floor is covered with the dust of years of disuse.  The
  92. front door to the south is open, and there is another room
  93. to the north.  A stairway on the east side of the room goes up.\n"
  94.     )
  95. ;
  96. farm2(SDESC) =
  97.     ($return (Sayer "Entry hall" %0))
  98. ;
  99.  
  100.  
  101. farm3(LDESC) =
  102.     ($say
  103. "You are on the east side of the farmhouse.  To the east, a forest
  104. stretches away into the distance.  The entrance to the farmhouse
  105. is to the south.\n"
  106.     )
  107. ;
  108. farm3(SDESC) =
  109.     ($return (Sayer "East of Farmhouse" %0))
  110. ;
  111.  
  112. farm4(LDESC) =
  113.     ($say
  114. "You are on the west side of the farmhouse.  The cornfields
  115. stretch away forever to the west.  The entrance to the house
  116. is to the south.\n"
  117.     )
  118. ;
  119. farm4(SDESC) =
  120.     ($return (Sayer "West of Farmhouse" %0))
  121. ;
  122.  
  123. farm5(LDESC) =
  124.     ($say
  125. "You are on the north side of the farmhouse.  A high fence
  126. separates you from the cornfields to the north and west. "
  127.     )
  128.     ($move insignia farm5)
  129. ;
  130. farm5(SDESC) =
  131.     ($move insignia farm5)
  132.     ($return (Sayer "North of Farmhouse" %0))
  133. ;
  134.  
  135.  
  136. farm6(LDESC) =
  137.     ($say
  138. "You are in an old, empty farmhouse kitchen.  All the
  139. cupboards and cabinets are bare (unless you can eat the
  140. thick layer of dust which covers everything).\n"
  141.     )
  142. ;
  143. farm6(SDESC) =
  144.     ($return (Sayer "Kitchen" %0))
  145. ;
  146.  
  147. farm7(LDESC) =
  148.     ($say
  149. "You are in the upstairs bedroom of the farmhouse.  All the
  150. windows are boarded up, and nobody has slept here for years.
  151. To the east is an exit leading to the entry hall below.  "
  152.     )
  153.     (IF ($prop bed OPENED) THEN
  154.     ($say
  155. "In the middle of the room is an old, rickety bed.  The west wall "
  156.     )
  157.     (IF ($prop panel OPENED) THEN
  158.         ($say "has a panel missing, revealing a secret stairway down.\n")
  159.      ELSE
  160.         ($say "seems to have a loose panel.\n")
  161.     )
  162.      ELSE
  163.     ($say
  164. "Against the west wall is an old, rickety bed (which may be
  165. why nobody has slept here for years).\n"
  166.     )
  167.     )
  168. ;
  169. farm7(SDESC) = ($return (Sayer "Bedroom" %0));
  170.  
  171. PanL =                  { Try to go through panel }
  172.     (IF ($prop panel OPENED) THEN
  173.     ($move .ME cel01)
  174.     ($say "You descend into the gloom...\n")
  175.      ELSEIF ($eq ($loc .ME) farm7) THEN
  176.     (cg)
  177.     ($exit 1)
  178.     )
  179. ;
  180.  
  181.  
  182. town1(SDESC) =
  183.     ($return (Sayer "Town" %0))
  184. ;
  185. town1(LDESC) = 
  186.     ($say
  187. "You are at the northern end of a one-horse town.  Although the buildings
  188. are in good shape, all seem deserted.  You can't even find one horse.
  189. To the east is an old smithy.  On the west side of the street is an
  190. abandoned hotel.  The street runs north and south.\n"
  191.     )
  192. ;
  193.  
  194. town2(SDESC) =
  195.     ($return (Sayer "Business District" %0))
  196. ;
  197. town2(LDESC) =
  198.     ($say
  199. "You are at the southern end of a one-horse town.  This is the
  200. business district.  On the east side of the street is an old
  201. building with a tastefully lettered sign, 'Arpa-Citizen's Savings'.
  202. To the west is the legendary 'Packet Inn'.  The street runs north-south.\n"
  203.     )
  204. ;
  205.  
  206. town3(SDESC) =
  207.     ($return (Sayer "Blacksmith's Shop" %0))
  208. ;
  209. town3(LDESC) =
  210.     ($say
  211. "You're in what is left of a once-thriving blacksmith's shop.
  212. Long ago abandoned, nothing much of interest remains.\n"
  213.     )
  214. ;
  215.  
  216. town4(SDESC) =
  217.     ($return (Sayer "Flophouse" %0))
  218. ;
  219. town4(LDESC) =
  220.     ($say
  221. "You're in the Flophouse hotel.  Never worth the visit even in
  222. its heyday, a quick search reveals nothing but a lot of dusty rooms.\n"
  223.     )
  224. ;
  225.  
  226. town5(SDESC) =
  227.     ($return (Sayer "Bank" %0))
  228. ;
  229. town5(LDESC) =
  230.     ($say
  231. "You are in the ancient and venerable institution of Arpa-Citizen's
  232. Savings (there's a branch in your town).  The lobby is tastefully
  233. decorated in marble.  The only feature is a strange sweet-smelling
  234. well in the center of the room.  A mysterious plaque on the side "
  235. "reads:\n
  236.     'Drop your bits here!'\n"
  237.     )
  238. ;
  239. TWN5y =         
  240.     ($setp .ME HAS ($minus ($prop .ME HAS) ($prop @Dobj WEIGH)))
  241.     ($move @Dobj ($loc .ME))
  242.     ($say "A strange glowing network of lights appears, and you can read:\n")
  243.     (IF ($prop ($dobj) POINT) THEN
  244.     ($setg SCORE ($plus @SCORE ($prop ($dobj) POINT)))
  245.     ($move ($dobj) .ALL)
  246.     ($say
  247. "    Your account is now at $" ($str @SCORE) ".\n
  248.     Thank you for letting Arpa-Citizen's be your host.\n"
  249.     )
  250.      ELSE
  251.     ($say "    Your deposit is worthless")
  252.     (IF ($pct 25) THEN
  253.         ($say ", but thanks for the trinket!\n")
  254.         ($move ($dobj) .ALL)
  255.      ELSE
  256.         ($say "!  Keep it!\n")
  257.     )
  258.     )
  259.     ($say "The Arpa network mercifully disappears.\n")
  260. ;
  261.  
  262. town6(SDESC)  =
  263.     ($return (Sayer "Packet Inn" %0))
  264. ;
  265. town6(LDESC)  =
  266.     ($say
  267. "You are at that famous old saloon, the Packet Inn.  Thousands
  268. of the local adventurers drank 'till they were totally zorked in
  269. this colorful old haunt.  A little wandering convinces you that
  270. nothing much is to be seen.\n"
  271.     )
  272. ;
  273.  
  274. {*** DUNGEON PROPER ***}
  275. cel01(LDESC) =
  276.     ($say
  277. "You are in a secret cellar below the farmhouse.  In the
  278. corner of one wall is a strange insignia composed of red
  279. and green squares, joined at the corners.  Passages
  280. lead to north and west.  An old stairway leads up and out.\n"
  281.     )
  282.     ($move insignia cel01)
  283. ;
  284. cel01(SDESC) =
  285.     ($move insignia cel01)
  286.     ($return (Sayer "Secret Cellar" %0))
  287. ;
  288.  
  289. cel02(LDESC) =
  290.     ($say
  291. "You are in a cool cave, once used for the storage of rare
  292. wines.  A cool breeze from the caves to the north keeps this cave
  293. at an even temperature the year round.  Exits can be seen
  294. to the north, south, and east.\n"
  295.     )
  296. ;
  297. cel02(SDESC) = ($return (Sayer "Cool Cave" %0))
  298. ;
  299.  
  300. { cel03 was moved to after cel08 }
  301.  
  302.  
  303. cel04(LDESC) =
  304.     ($say
  305. "This is a small temple to Elbereth, Queen of the Stars.  The walls
  306. glow with a warm iridescence of their own.  They are covered
  307. with murals depicting the kindling of the stars at the Beginning of
  308. Days.  In the corner someone has added an insignia consisting of red
  309. and white squares joined at the corners.  Passages lead east and west,
  310. and a stairway to the north leads down into darkness.\n"
  311.     )
  312.     ($move insignia cel04)
  313. ;
  314. cel04(SDESC) =
  315.     ($move insignia cel04)
  316.     ($return (Sayer "Temple" %0))
  317. ;
  318. cel04(LIGHT)=TRUE;
  319.  
  320.  
  321. cel05(LDESC) =
  322.     (IF ($prop dragon KILLED) THEN
  323.     ($say
  324. "You are in a very wet cave.  Puddles of extremely cold water
  325. are everywhere."
  326.     )
  327.      ELSE
  328.     ($say
  329. "You are in an icy cave.  All the walls are covered with thick
  330. layers of ice."
  331.     )
  332.     ($move ice cel05)
  333.     )
  334.     ($say
  335. "  The cave continues north and south, and there is a side tunnel leading
  336. to the northeast.\n"
  337.     )
  338. ;
  339. cel05(SDESC) =
  340.     (IF ($prop dragon KILLED) THEN
  341.     ($return (Sayer "Wet Cave" %0))
  342.      ELSE
  343.     ($move ice cel05)
  344.     ($return (Sayer "Ice Cave" %0))
  345.     )
  346. ;
  347.  
  348. cel06(LDESC) =
  349.     ($say "You have reached a large cavern")
  350.     (IF ($not ($prop dragon KILLED)) THEN
  351.     ($say
  352. " of ice.  You cannot see
  353. the roof, but you are sure it is covered with icicles.\n"
  354.     )
  355.     ($move ice cel06)
  356.      ELSE
  357.     ($say
  358. ".  You cannot see the roof,
  359. and it looks like something has melted, covering the floor with puddles.\n"
  360.     )
  361.     )
  362.     ($say "There are exits east and southwest.\n")
  363. ;
  364. cel06(SDESC) =
  365.     (IF ($not ($prop dragon KILLED)) THEN
  366.     ($move ice cel06)
  367.     )
  368.     ($return (Sayer "Great Cavern" %0))
  369. ;
  370.  
  371.  
  372. cel07(LDESC) =
  373.     ($say "You are in a tiny side room where the ice dragon ")
  374.     (IF ($prop dragon KILLED) THEN
  375.     ($say "kept")
  376.      ELSE
  377.     ($say "keeps")
  378.     )
  379.     ($say
  380. " his single prize treasure.  You may leave through a western doorway.\n"
  381.     )
  382. ;
  383. cel07(SDESC) =
  384.     ($return (Sayer "Treasure Room" %0))
  385. ;
  386.  
  387. cel08(LDESC) =
  388.     ($say
  389. "You are in an old abandoned room, once the resident of a frustrated
  390. artist.  A huge mural depicting "
  391.     )
  392.     (IF ($prop dragon KILLED) THEN
  393.     ($say "a gentle green field ")
  394.      ELSE
  395.     ($say "a barren wasteland ")
  396.     )
  397.     ($say
  398. "covers the west wall.  A dim glow comes from the corridor to the east.
  399. Vandals have apparently been here too, for on the painting is drawn a
  400. strange insignia consisting of red and blue squares, joined at the corners.\n"
  401.     )
  402.     ($move insignia cel08)
  403. ;
  404. cel08(SDESC) =
  405.     ($move insignia cel08)
  406.     ($return (Sayer "Artist's Retreat" %0))
  407. ;
  408.  
  409. cel03(LDESC) =
  410.     (IF ($prop dragon KILLED) THEN
  411.     ($say
  412. "You are standing on the south bank of a turbulent underground
  413. river.  The only way to go is back south.\n"
  414.     )
  415.      ELSE
  416.     ($say
  417. "You are standing on a frozen underground river.  The
  418. source of the river seems to have been to the west, and
  419. you can walk that way on the ice.  However, to the
  420. northeast, the river forms a frozen waterfall you can
  421. slide down.\n"
  422.     )
  423.     ($move ice cel03)
  424.     )
  425. ;
  426. cel03(SDESC) =
  427.     (IF ($prop dragon KILLED) THEN
  428.     ($return (Sayer "Bank of Underground River" %0))
  429.      ELSE
  430.     ($move ice cel03)
  431.     ($return (Sayer "Top of Frozen Fall" %0))
  432.     )
  433. ;
  434.  
  435. cel09(LDESC) =
  436.     ($say
  437. "You are at the southern end of a dry river gorge.  The source
  438. of the river was once a waterfall to the south, but for some reason
  439. it seems frozen solid.  The riverbed continues north.  There is
  440. a large crack in the waterfall to the south.\n"
  441.     )
  442.     ($move ice cel09)
  443. ;
  444. cel09(SDESC) =
  445.     ($move ice cel09)
  446.     ($return (Sayer "Southern Gorge" %0))
  447. ;
  448.  
  449. cel10(LDESC) =
  450.     ($say
  451. "You are in a dark cave.  The low-hanging stalactites and tall
  452. stalagmites cast eerily human-like shadows on the craggy walls.
  453. A roughly-hewn stairway to the south is lit by a dim illumination
  454. from above, while a slimy pit in the middle of the room leads
  455. down into even inkier blackness."
  456.     )
  457.     (IF ($prop dragon KILLED) THEN
  458.     ($say "  The pit is full of very cold water.")
  459.     )
  460.     ($say "\n")
  461. ;
  462. cel10(SDESC) =
  463.     ($return (Sayer "Shadowy Cave" %0))
  464. ;
  465.  
  466. cel11(LDESC) =
  467.     (IF    ($and    (See [clear crystal] ($cont ($loc .ME)))
  468.         ($prop [clear crystal] LIGHT)
  469.     )
  470.      THEN
  471.     ($say
  472. "You are in an impossibly dark cave.  Only the light from your
  473. magic crystal makes it possible to see, even dimly, here.  You
  474. can make out a tunnel leading leading west, and another leading
  475. east.  No other exits are visible.  A large pit lies in the middle
  476. of the cave.\n"
  477.     )
  478.      ELSE
  479.     ($say "It's mighty dark in here!")
  480.     (IF (See globe ($cont ($loc .ME))) THEN
  481.         (IF ($prop globe LIGHT) THEN
  482.         ($say "  Even your glowing globe is barely visible!")
  483.         )
  484.     )
  485.     ($say "\n")
  486.     ($setg Dark TRUE)
  487.     )
  488. ;
  489.  
  490. cel11(SDESC) =
  491.     (IF    ($not ($and    (See [clear crystal] ($cont ($loc .ME)) )
  492.             ($prop [clear crystal] LIGHT)
  493.     ))
  494.      THEN
  495.     ($setg Dark TRUE)
  496.     )
  497.     ($return (Sayer "DARK Cave" %0))
  498. ;
  499.  
  500. cel12(LDESC) =
  501.     ($say
  502. "You are in a small chamber which is not quite as dark as the DARK
  503. cave to the west.  There are no other exits.\n"
  504.     )
  505. ;
  506. cel12(SDESC) =
  507.     ($return (Sayer "Small Chamber" %0))
  508. ;
  509.  
  510. VAR
  511.   BSaid;
  512.  
  513. cel13(LDESC) =
  514.     ($say
  515. "You are on a large underground lake of ice, thick enough
  516. to walk on.  To the west you can dimly make out a cavern
  517. entrance; to the east is an icy river you can walk on.  "
  518.     )
  519.     (IF ($prop cel13 HOLED) THEN
  520.     ($say
  521. "In the middle of the lake is a hole; icy water sloshes about
  522. two feet below the ice."
  523.     )
  524.     )
  525.     ($say "\n")
  526.     ($setg BSaid FALSE)
  527.     ($move ice cel13)
  528. ;
  529. cel13(SDESC) =
  530.     ($setg BSaid FALSE)
  531.     ($move ice cel13)
  532.     ($return (Sayer "Icy Lake" %0))
  533. ;
  534.  
  535. BDesc =
  536.     (IF ($prop wetsuit WORN) THEN
  537.     ($say "Luckily, your wetsuit enables you to breathe down here.\n")
  538.      ELSEIF ($not @BSaid) THEN
  539.     ($say "You can't hold your breath for long...\n")
  540.     ($setg BSaid TRUE)
  541.     )
  542. ;
  543.  
  544. cel14(LDESC) =
  545.     ($say
  546. "You are under the ice of a frozen lake.  You can barely make out exits
  547. to the east and west.  "
  548.     )
  549.     (IF ($prop cel13 HOLED) THEN
  550.     ($say "There is a hole in the ice above you.\n")
  551.      ELSE
  552.     ($say "A diffuse light comes through the ice above.\n")
  553.     )
  554.     (BDesc)
  555.     ($move ice cel14)
  556. ;
  557. cel14(SDESC) =
  558.     ($move ice cel14)
  559.     ($return (Sayer "Underwater" %0))
  560. ;
  561.  
  562. cel15(LDESC) =
  563.     ($say
  564. "You are on a sandy beach in a small ice cave.  A small pool of water
  565. comes up to the beach from the east, and a quick survey of the place
  566. shows that it is completely covered by the stony roof.  You can walk up
  567. to the back of the cave to the south, but the pool seems to be the only
  568. other exit.\n"
  569.     )
  570.     ($setg BSaid FALSE)
  571. ;
  572. cel15(SDESC) =
  573.     ($setg BSaid FALSE)
  574.     ($return (Sayer "Sandy Beach" %0))
  575. ;
  576.  
  577. cel16(LDESC) =
  578.     ($say 
  579. "You are at the back of a small ice cave.  A sandy shore slopes down
  580. to a blue pool of water to the north.  To the east is a small crawlway
  581. leading into inky blackness.\n"
  582.     )
  583. ;
  584. cel16(SDESC) =
  585.     ($return (Sayer "Back of Cave" %0))
  586. ;
  587.  
  588. cel17(LDESC) =
  589.     ($say
  590. "You are in a stream under a ceiling of ice.  The stream
  591. leads northeast, and to the west you can see more light.\n"
  592.     )
  593.     (BDesc)
  594.     ($move ice cel17)
  595. ;
  596. cel17(SDESC) =
  597.     ($move ice cel17)
  598.     ($return (Sayer "In Stream" %0))
  599. ;
  600.  
  601. cel18(LDESC) =
  602.     ($say
  603. "You are in a hollow spot behind a frozen waterfall to the north.
  604. Above you, a ceiling of ice gradually lowers to meet a dark
  605. body of water to the southwest.  There is a large crack in the
  606. waterfall.\n"
  607.     )
  608.     ($move ice cel18)
  609.     ($setg BSaid FALSE)
  610. ;
  611. cel18(SDESC) =
  612.     ($setg BSaid FALSE)
  613.     ($move ice cel18)
  614.     ($return (Sayer "Hollow Spot" %0))
  615. ;
  616.  
  617. cel19(LDESC) =
  618.     ($say
  619. "You are at the source of a frozen stream which flows out of the
  620. rock to the west.  The stream continues to the east.\n"
  621.     )
  622.     ($move ice cel19)
  623. ;
  624. cel19(SDESC) =
  625.     ($move ice cel19)
  626.     ($return (Sayer "Source of Frozen Stream" %0))
  627. ;
  628.  
  629. cel20(LDESC) =
  630.     ($say
  631. "You are in what was once a study.  The furniture has
  632. been smashed to splinters, and none of the papers or
  633. books remain intact.  The only exit is to the west.\n"
  634.     )
  635. ;
  636. cel20(SDESC) =
  637.     ($return (Sayer "Study" %0))
  638. ;
  639.  
  640. cel21(LDESC) =
  641.     (IF ($eq @RiverLoc GRATELOC) THEN
  642.     ($say
  643. "You have reached a point where a bridge crosses the dry river bed.
  644. The river bed is blocked by a large iron grate to the south.\n"
  645.     )
  646.      ELSEIF ($eq @RiverLoc BEND1LOC) THEN
  647.     ($say
  648. "You are at a sharp bend where the dry river bed coming from the south
  649. turns to the west.\n"
  650.     )
  651.      ELSEIF ($and ($gt @RiverLoc BEND1LOC) ($lt @RiverLoc BEND2LOC)) THEN
  652.     ($say "You are in a dry river bed that runs east-west.\n")
  653.      ELSEIF ($eq @RiverLoc BEND2LOC) THEN
  654.     ($say
  655. "You are at a sharp bend where the dry river bed coming from
  656. the east turns to the south.\n"
  657.     )
  658.      ELSE
  659.     ($say "You are in a dry river bed that runs north-south.\n")
  660.     )
  661. ;
  662. cel21(SDESC) =
  663.     (IF ($eq @RiverLoc GRATELOC) THEN
  664.     ($return (Sayer "Under Bridge" %0))
  665.      ELSEIF ($or ($eq @RiverLoc BEND1LOC) ($eq @RiverLoc BEND2LOC)) THEN
  666.     ($return (Sayer "Bend in River" %0))
  667.      ELSE
  668.     ($return (Sayer "Dry River Bed" %0))
  669.     )
  670. ;
  671.  
  672. desert(LDESC) =
  673.     ($say
  674. "You are lost in the middle of a vast desert.  The terrain
  675. is the same, no matter which way you look.  The heat
  676. is tremendous, and you have no water.  In other words,
  677. you're in trouble!\n"
  678.     )
  679. ;
  680. desert(SDESC) =
  681.     ($return (Sayer "Desert" %0))
  682. ;
  683.  
  684. field(LDESC) =
  685.     ($say
  686. "You are in the middle of a grassy field.  Above you is a beautiful
  687. blue sky in which fleecy white clouds make pretty shapes.  The sound
  688. of birds fills the air.  A path leads north to a large building built
  689. of white marble, with hundreds of columns and sculptures about.\n"
  690.     )
  691. ;
  692. field(SDESC) =
  693.     ($return (Sayer "Grassy Field" %0))
  694. ;
  695.  
  696. ENDGAME =
  697.     ($say
  698. "As you approach the building, a robed figure emerges from the door of the
  699. building.  He looks at you and says, \"I am the former owner of the farm
  700. and of the cellar below.  You have shown great merit in your struggle
  701. to solve my puzzles.  "
  702.     )
  703.     (IF ($cont .ME) THEN
  704.     ($say
  705. "However, you must shun all things wordly before you
  706. can enter here.  Return to your world and come back when you have
  707. attained this.\"\n"
  708.     )
  709.      ELSEIF ($lt @SCORE PMAX) THEN
  710.     ($say
  711. "Unfortunately, you have failed to return all misplaced
  712. treasures to their proper location.  Consider this:  a penny saved
  713. is a penny earned!\"\n"
  714.     )
  715.      ELSE
  716.     ($say
  717. "You have also wisely shed yourself
  718. of damaging worldly affectations, and have honorably satisfied your
  719. obligations.  Come and join our circle of philosophers!\"
  720. \n\tThe robed figure escorts you into the building.  You have finished
  721. the game!\n"
  722.     )
  723.     ($spec 3)
  724.     )
  725.     ($say "The robed figure waves his arms, and you are transported to...\n")
  726.     ($move .ME road1)
  727.     ($setg GO TRUE)
  728. ;
  729.